package com.thread.threadfirst.javaBase.classLoader;

/**
 * 自定义类加载器Test
 */
public class CustomClassLoaderTest {

    public static void main(String[] args) {
        CustomClassLoader ccl=new CustomClassLoader("customClassLoader");
        ccl.setLoadPath("D:\\exercise\\target\\classes\\");
        Class<?> clazz=ccl.findClass("com.thread.threadfirst.javaBase.classLoader.Role");
        System.out.println("类加载器: "+clazz.getClassLoader());
        /*
        因为遵循双亲委派原则，所以先是逐级向上查找是否被加载过，然后逐级向下判断是否能加载，而这里输出自定义类加载器是因为项目还没有重新编译过，
        所以AppClassLoader还不能在classpath路径下扫描到此.class文件，所以项目经过编译后就会被AppClassLoader加载到了。
        输出：
        com.thread.threadfirst.javaBase.classLoader.CustomClassLoader@1d81eb93
        */
    }
}
